/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import entidades.Tipo;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import persistencia.RepositorioJPATipo;

/**
 *
 * @author Gleydson
 */
@ManagedBean(name = "TiposBean")
@ViewScoped

public class TiposBean {
    private Tipo bean;
    private RepositorioJPATipo repositorio;
    private List<Tipo> lista;
    private boolean insert;
    
    public TiposBean(){
        bean = new Tipo();
        repositorio = new RepositorioJPATipo();
        lista = repositorio.getAll();
        insert = true;
    }    

    public void botaoNovoAction(){
        insert = true;
        bean = new Tipo();
    }
    
    public void botaoAlterarAction(){
        insert = false;   
    }

    public void botaoApagarAction(){
        getRepositorio().delete(getBean());  
        lista = repositorio.getAll();
    }
    
    public void botaoSalvarAction(){
        if(insert)
            getRepositorio().insert(getBean());
        else
            getRepositorio().update(getBean());
        
        lista = repositorio.getAll();
    }


    public Tipo getBean() {
        return bean;
    }

    /**
     * @param tipo the tipo to set
     */
    public void setBean(Tipo bean) {
        this.bean = bean;
    }

    /**
     * @return the repositorioTipo
     */
    public RepositorioJPATipo getRepositorio() {
        return repositorio;
    }

    /**
     * @param repositorioTipo the repositorioTipo to set
     */
    public void setRepositorio(RepositorioJPATipo repositorio) {
        this.repositorio = repositorio;
    }

    /**
     * @return the tipos
     */
    public List<Tipo> getLista() {
        return lista;
    }

    /**
     * @param tipos the tipos to set
     */
    public void setLista(List<Tipo> lista) {
        this.lista = lista;
    }
    
}
